home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
COMAL
/
Z-Misc Series
/
(k)zd.d64
/
proc.sets32
< prev
next >
Wrap
Text File
|
2007-03-01
|
4KB
|
150 lines
0010 // DELETE "LST.SETS32"
0020 // LIST "LST.SETS32"
0030
0040
0050 ╞╒╬├ BSTR$(NUMBER) ├╠╧╙┼─
0060 ─╔═ BINAR$ ╧╞ 32
0070 BINAR$:=BIN2$(NUMBER)
0080 ╫╚╔╠┼ ╠┼╬(BINAR$)<32 ─╧ BINAR$:="0"+BINAR$
0090 ╥┼╘╒╥╬ BINAR$
0100
0110 ╞╒╬├ BIN2$(NUMBER)
0120 ╔╞ NUMBER=0 ╘╚┼╬
0130 ╥┼╘╒╥╬ ""
0140 ┼╠╙┼
0150 ╥┼╘╒╥╬ BIN2$(NUMBER ─╔╓ 2)+╙╘╥$(NUMBER ═╧─ 2)
0160 ┼╬─╔╞
0170 ┼╬─╞╒╬├ BIN2$
0180
0190 ┼╬─╞╒╬├ BSTR$
0200
0210 ╞╒╬├ EMPTY ├╠╧╙┼─
0220 ╔═╨╧╥╘ BSTR$,BVAL
0230 ─╔═ BINAR$ ╧╞ 32
0240 BINAR$:=BSTR$(0)
0250 ╥┼╘╒╥╬ BVAL(BINAR$)
0260 ┼╬─╞╒╬├ EMPTY
0270
0280 ╞╒╬├ ALL ├╠╧╙┼─
0290 ╔═╨╧╥╘ BVAL
0300 ─╔═ BINAR$ ╧╞ 32
0310 ╞╧╥ T:=1 ╘╧ 32 ─╧ BINAR$:+"1"
0320 ╥┼╘╒╥╬ BVAL(BINAR$)
0330 ┼╬─╞╒╬├ ALL
0340
0350 ╞╒╬├ SETOF(ELEMENT) ├╠╧╙┼─
0360 ╔═╨╧╥╘ BSTR$,BVAL
0370 ─╔═ BINAR$ ╧╞ 32
0380 BINAR$:=BSTR$(0)
0390 BINAR$(ELEMENT):="1"
0400 ╥┼╘╒╥╬ BVAL(BINAR$)
0410 ┼╬─╞╒╬├ SETOF
0420
0430 ╞╒╬├ BVAL(BINAR$) ├╠╧╙┼─
0440 ╔╞ BINAR$="" ╘╚┼╬
0450 ╥┼╘╒╥╬ 0
0460 ┼╠╙┼
0470 L:=╠┼╬(BINAR$)
0480 ╥┼╘╒╥╬ BVAL(BINAR$(1:L-1))*2+╓┴╠(BINAR$(L))
0490 ┼╬─╔╞
0500 ┼╬─╞╒╬├ BVAL
0510
0520 ╞╒╬├ UNION(SET1,SET2) ├╠╧╙┼─
0530 ╔═╨╧╥╘ BSTR$,BVAL
0540 ─╔═ BINAR1$ ╧╞ 32, BINAR2$ ╧╞ 32
0550 BINAR1$:=BSTR$(SET1)
0560 BINAR2$:=BSTR$(SET2)
0570 ╞╧╥ T:=1 ╘╧ 32 ─╧
0580 ╔╞ BINAR2$(T)="1" ╘╚┼╬ BINAR1$(T):="1"
0590 ┼╬─╞╧╥ T
0600 ╥┼╘╒╥╬ BVAL(BINAR1$)
0610 ┼╬─╞╒╬├ UNION
0620
0630 ╞╒╬├ SECTION(SET1,SET2) ├╠╧╙┼─
0640 ╔═╨╧╥╘ BSTR$,BVAL
0650 ─╔═ BINAR1$ ╧╞ 32, BINAR2$ ╧╞ 32
0660 ─╔═ SECT$ ╧╞ 32
0670 SECT$:=BSTR$(0)
0680 BINAR1$:=BSTR$(SET1)
0690 BINAR2$:=BSTR$(SET2)
0700 ╞╧╥ T:=1 ╘╧ 32 ─╧
0710 ╔╞ BINAR1$(T)="1" ┴╬─ BINAR2$(T)="1" ╘╚┼╬
0720 SECT$(T):="1"
0730 ┼╬─╔╞
0740 ┼╬─╞╧╥ T
0750 ╥┼╘╒╥╬ BVAL(SECT$)
0760 ┼╬─╞╒╬├ SECTION
0770
0780 ╞╒╬├ INSET(SET,ELEMENT) ├╠╧╙┼─
0790 ╔═╨╧╥╘ BSTR$
0800 ╔╞ BSTR$(SET)(ELEMENT:ELEMENT)="1" ╘╚┼╬
0810 ╥┼╘╒╥╬ ╘╥╒┼
0820 ┼╠╙┼
0830 ╥┼╘╒╥╬ ╞┴╠╙┼
0840 ┼╬─╔╞
0850 ┼╬─╞╒╬├ INSET
0860
0870 ╞╒╬├ INCLUDE(SET,ELEMENT) ├╠╧╙┼─
0880 ╔═╨╧╥╘ BSTR$,BVAL
0890 ─╔═ BINAR$ ╧╞ 32
0900 BINAR$:=BSTR$(SET)
0910 BINAR$(ELEMENT):="1"
0920 ╥┼╘╒╥╬ BVAL(BINAR$)
0930 ┼╬─╞╒╬├ INCLUDE
0940
0950 ╞╒╬├ EXCLUDE(SET,ELEMENT) ├╠╧╙┼─
0960 ╔═╨╧╥╘ BSTR$,BVAL
0970 ─╔═ BINAR$ ╧╞ 32
0980 BINAR$:=BSTR$(SET)
0990 BINAR$(ELEMENT):="0"
1000 ╥┼╘╒╥╬ BVAL(BINAR$)
1010 ┼╬─╞╒╬├ EXCLUDE
1020
1030 ╞╒╬├ ELEMENTS(SET) ├╠╧╙┼─
1040 ╔═╨╧╥╘ BSTR$
1050 ─╔═ BINAR$ ╧╞ 32
1060 BINAR$:=BSTR$(SET)
1070 ANT:=0
1080 ╞╧╥ T:=1 ╘╧ 32 ─╧
1090 ╔╞ BINAR$(T)="1" ╘╚┼╬
1100 ╨╥╔╬╘ T;
1110 ANT:+1
1120 ┼╬─╔╞
1130 ┼╬─╞╧╥ T
1140 ╨╥╔╬╘ "#",
1150 ╥┼╘╒╥╬ ANT
1160 ┼╬─╞╒╬├ ELEMENTS
1170
1180 ╞╒╬├ MINUS(SET1,SET2) ├╠╧╙┼─
1190 ╔═╨╧╥╘ BSTR$,BVAL
1200 ─╔═ BINAR1$ ╧╞ 32, BINAR2$ ╧╞ 32
1210 BINAR1$:=BSTR$(SET1)
1220 BINAR2$:=BSTR$(SET2)
1230 ╞╧╥ T:=1 ╘╧ 32 ─╧
1240 ╔╞ BINAR2$(T)="1" ╘╚┼╬ BINAR1$(T):="0"
1250 ┼╬─╞╧╥ T
1260 ╥┼╘╒╥╬ BVAL(BINAR1$)
1270 ┼╬─╞╒╬├ MINUS
1280
1290 ╞╒╬├ SYMMINUS(SET1,SET2) ├╠╧╙┼─
1300 ╔═╨╧╥╘ BSTR$,BVAL
1310 ─╔═ BINAR1$ ╧╞ 32, BINAR2$ ╧╞ 32
1320 ─╔═ MIN$ ╧╞ 32
1330 MIN$:=BSTR$(0)
1340 BINAR1$:=BSTR$(SET1)
1350 BINAR2$:=BSTR$(SET2)
1360 ╞╧╥ T:=1 ╘╧ 32 ─╧
1370 ╔╞ BINAR1$(T)="1" ┴╬─ BINAR2$(T)="0" ╘╚┼╬
1380 MIN$(T):="1"
1390 ┼╠╔╞ BINAR1$(T)="0" ┴╬─ BINAR2$(T)="1" ╘╚┼╬
1400 MIN$(T):="1"
1410 ┼╬─╔╞
1420 ┼╬─╞╧╥ T
1430 ╥┼╘╒╥╬ BVAL(MIN$)
1440 ┼╬─╞╒╬├ SYMMINUS
1450
1460 ╞╒╬├ I(SET,E) ├╠╧╙┼─
1470 ╔═╨╧╥╘ INCLUDE
1480 ╥┼╘╒╥╬ INCLUDE(SET,E)
1490 ┼╬─╞╒╬├ I